home *** CD-ROM | disk | FTP | other *** search
/ MacWorld 1996 April / Macworld (1996-04).dmg / Shareware World / Entertainment / General / Xconq 7.0.1 / lib / greek.g < prev    next >
Text File  |  1995-08-22  |  7KB  |  324 lines

  1. (game-module "greek"
  2.   (title "Ancient Greece")
  3.   (blurb "Classical Greece, 500-350 BC")
  4.   (variants
  5.    (world-seen true)
  6.    (see-all false)
  7.    (world-size)
  8.    ("Keep Score" keep-score
  9.      (true (scorekeeper (do last-side-wins))))
  10.    )
  11.   )
  12.  
  13. (unit-type peltast
  14.   (help "light fast infantry"))
  15. (unit-type hoplite
  16.   (help "heavy destructive infantry"))
  17. (unit-type archer
  18.   (help "archers and slingers"))
  19. (unit-type cavalry
  20.   (help "more like light cavalry"))
  21. (unit-type trireme (char "T")
  22.   (help "three-decked ship - mainstay of the navies"))
  23. (unit-type |siege engine| (image-name "catapult") (char "S")
  24.   (help "bashes cities (slowly)"))
  25. (unit-type fortifications
  26.   (help "augments a polis' defense"))
  27. (unit-type polis (image-name "walltown") (char "*")
  28.   (help "typical city-state"))
  29. (unit-type metropolis (image-name "parthenon") (char "@")
  30.   (help "a large and powerful city"))
  31.  
  32. (define p peltast)
  33. (define h hoplite)
  34. (define a archer)
  35. (define c cavalry)
  36. (define T trireme)
  37. (define S |siege engine|)
  38. (define / fortifications)
  39. (define * polis)
  40. (define @ metropolis)
  41.  
  42. (add / image-name "camp")
  43.  
  44. (material-type food
  45.   (help "everybody needs food to survive"))
  46. (material-type talents
  47.   (help "the unit of big money"))
  48.  
  49. (terrain-type sea (color "sky blue") (char "."))
  50. (terrain-type plains (color "green") (char "+"))
  51. (terrain-type forest (color "forest green") (char "%"))
  52. (terrain-type desert (color "yellow") (char "~"))
  53. (terrain-type mountains (color "sienna") (char "^"))
  54. (terrain-type river (color "blue") (char "-")
  55.   (subtype border))
  56.  
  57. (define cities (* @))
  58. (define places (/ * @))
  59. (define ship-u* (trireme))
  60. (define land-u* (p h a c S))
  61. (define movers (p h a c T S))
  62.  
  63. (define water (sea river))
  64. (define land (plains forest desert mountains))
  65.  
  66. ;;; Static relationships.
  67.  
  68. (table vanishes-on
  69.   (land-u* water true)
  70.   (places water true)
  71.   (ship-u* land true)
  72.   )
  73.  
  74. (add t* capacity 4)
  75.  
  76. (table unit-size-in-terrain
  77.   (u* t* 1) ; isn't this the default?
  78.   )
  79.  
  80. ;; Cities and ships have relatively limited capacity.
  81.  
  82. (add u* capacity 0)
  83.  
  84. (add cities capacity 8)
  85.  
  86. (add trireme capacity 4)
  87.  
  88. (table unit-size-as-occupant
  89.   (u* u* 99)
  90.   ((p h a c) trireme (2 2 1 4))
  91.   (movers cities 1)
  92.   )
  93.  
  94. ;(table unit-capacity-x
  95. ;  (cities / 4)
  96. ;  )
  97.  
  98. ;;; Unit-material capacities.
  99.  
  100. (table unit-storage-x
  101.   (u* food (2 2 2 2 100 0 100 100 100))
  102.   (u* talents (0 0 0 0 120 0 1000 3000 9000))
  103.   )
  104.  
  105. ;;; Vision.
  106.  
  107. ;; A month's time is sufficient for news about cities
  108. ;; to get around everywhere.
  109.  
  110. (add cities see-always true)
  111.  
  112. ;;; Actions.
  113.  
  114. ;; A turn is a whole month, so lots can happen.
  115.  
  116. (add u* acp-per-turn (16 12 16 32 24 4 0 1 1))
  117.  
  118. ;;; Movement.
  119.  
  120. (add places speed 0)
  121.  
  122. (table mp-to-enter-terrain
  123.   (land-u* water 99)
  124.   (land-u* mountains 2)
  125.   (ship-u* land 99)
  126.   )
  127.  
  128. ;;; Construction.
  129.  
  130. (add u* cp (20 20 3 12 6 12 1 1 1))
  131.  
  132. (table acp-to-create
  133.   (* movers 1)
  134.   (@ movers 1)
  135.   )
  136.  
  137. (table cp-on-creation
  138.   (* movers 1)
  139.   (@ movers 1)
  140.   )
  141.  
  142. (table acp-to-build
  143.   (* movers 1)
  144.   (@ movers 1)
  145.   )
  146.  
  147. (table cp-per-build
  148.   (* movers 1)
  149.   (@ movers 1)
  150.   )
  151.  
  152. ;; Production.
  153.  
  154. (table base-production
  155.   ((p h a c) food 1)
  156.   (cities food 10)
  157.   )
  158.  
  159. (table productivity
  160.   (u* (desert mountains) 0)
  161.   )
  162.  
  163. (table base-consumption
  164.   ((p h a c) food 1)
  165.   (cities food 10)
  166.   )
  167.  
  168. (table hp-per-starve
  169.   ((p h) food 10)
  170.   ((a c) food 1)
  171.   (cities food 4)
  172.   )
  173.  
  174. ;;; Combat.
  175.  
  176. ;;               p  h  a  c  T  S  /  *  @
  177. (add u* hp-max (20 20  1  1 10  2 10 20 40))
  178.  
  179. (table acp-to-attack
  180.   (u* u* 8)
  181.   )
  182.  
  183. (table hit-chance
  184. ;;        p  h  a  c  T  S  /  *  @
  185.   (p u* (40 20 50 40 10 30 10  0  0))
  186.   (h u* (60 40 50 50 70 50 70 20 10))
  187.   (a u* (50 20 30 30 60 30  0  0  0))
  188.   (c u* (60 30 50 50 50 60 50  0  0))
  189.   (T u* ( 0  0  0  0  0 30  0  0  0))
  190.   (S u* ( 0  0  0  0  0  5 99 99 99))
  191.   (/ u* ( 0  0  0  0 20  0  0  0  0))
  192.   (* u* ( 0 40  0  0  0 10  0  0  0))
  193.   (@ u* ( 0 80  0  0  0 20  0  0  0))
  194.   )
  195.  
  196. (table damage
  197.   (u* u* 1)
  198.   (h u* 2)
  199.   (S cities 4)
  200.   )
  201.  
  202. (table capture-chance
  203.   ;; Only hoplites can capture anything.
  204.   (h S 50)
  205.   (h * 10)
  206.   (h @ 5)
  207.   )
  208.  
  209. ;;; Backdrop.
  210.  
  211. ;; 1000 c attrition
  212.  
  213. ;; The mere presence of a hoplite army might cause the city
  214. ;; to change sides.
  215.  
  216. (table surrender-chance
  217.   (cities h (10 5))
  218.   )
  219.  
  220. (table surrender-range
  221.   (cities h 1)
  222.   )
  223.  
  224. ;;; Random generation.
  225.  
  226. (set alt-blob-density 10000)
  227. (set alt-blob-size 40)
  228. (set alt-smoothing 1)
  229. (set wet-blob-density 2000)
  230. (set wet-blob-size 100)
  231.  
  232. (add t* alt-percentile-min (  0  70  70  70  90 0))
  233. (add t* alt-percentile-max ( 70  90  90  90 100 0))
  234. (add t* wet-percentile-min (  0  20  80   0   0 0))
  235. (add t* wet-percentile-max (100  80 100  20 100 0))
  236.  
  237. (set edge-terrain sea) ; the river Oceanus
  238.  
  239. (add @ start-with 1)
  240. (add h start-with 1)
  241. (add T start-with 1)
  242. (add * independent-near-start 3)
  243. ;; Try to get countries on the coast.
  244. (add (sea plains) country-terrain-min (1 1))
  245.  
  246. (table independent-density
  247.   (* (plains desert) (100 50)))
  248.  
  249. (table favored-terrain
  250.   (u* t* 100)
  251.   (u* sea 0)
  252.   (ship-u* sea 100)
  253.   )
  254.  
  255. ;;; (should set up a BC calendar)
  256.  
  257. (world 2500 (year-length 12))  ; big world, can't circumnavigate.
  258.  
  259. ;;; An assortment of city-states.  The famous ones are weighted more heavily.
  260.  
  261. (set side-library '(
  262.   (10 (name "Athens") (adjective "Athenian"))
  263.   (10 (name "Sparta") (adjective "Spartan"))
  264.   (5 (name "Corinth") (adjective "Corinthian"))
  265.   (5 (name "Thebes") (adjective "Theban"))
  266.   (3 (name "Argos") (adjective "Argive"))
  267.   (2 (name "Megara") (adjective "Megaran"))
  268.   (2 (name "Miletus") (adjective "Miletan"))
  269.   (2 (name "Messene") (adjective "Messenian"))
  270.   (2 (name "Syracuse") (adjective "Syracusan"))
  271.   (2 (name "Ephesus") (adjective "Ephesian"))
  272.   (2 (name "Delos") (adjective "Delian"))
  273.   ((name "Lemnos") (adjective "Lemnian"))
  274.   ((name "Ambracia") (adjective "Ambraciot"))
  275.   ((name "Phokia") (adjective "Phokian"))
  276.   ((name "Chios") (adjective "Chian"))
  277.   ((name "Gelos") (adjective "Geloan"))
  278.   ((name "Caria") (adjective "Carian"))
  279.   ((name "Lokria") (adjective "Lokrian"))
  280.   ((name "Melos") (adjective "Melian"))
  281.   ((name "Phlias") (adjective "Phliasian"))
  282.   ((name "Samos") (adjective "Samian"))
  283.   ((name "Thuria") (adjective "Thurian"))
  284.   ((name "Tegea") (adjective "Tegean"))
  285.   ((name "Dolope") (adjective "Dolopian"))
  286.   ((name "Olynthia") (adjective "Olynthian"))
  287.   ((name "Elis") (adjective "Elean"))
  288.   ((name "Lucania") (adjective "Lucanian"))
  289.   ((name "Kythera") (adjective "Kytheran"))
  290.   ((name "Skios") (adjective "Skionian"))
  291. ))
  292.  
  293. (game-module (notes (
  294.   "This time strictly covers about 500 to 350 B.C.  Land warfare"
  295.   "was most significant, with some notable sea-fights.  Cities were nearly"
  296.   "untakeable, so the action centered around sieges and field battles."
  297.   ""
  298.   "The numbers border on the plausible, but again this one has not been"
  299.   "played enough to find the imbalances even, let alone decide on good"
  300.   "strategies."
  301. )))
  302.  
  303. (add peltast notes
  304.   "Useful in skirmishes."
  305.   )
  306. (add hoplite notes
  307.   "Hoplite (heavy infantry).  For the capture of cities by assault."
  308.   )
  309. (add archer notes
  310.   "???"
  311.   )
  312. (add cavalry notes
  313.   "Fast, but ineffective against cities."
  314.   )
  315. (add trireme notes
  316.   "Use this for everything naval."
  317.   )
  318.  
  319. ;;; Should add variable loyalties.
  320.  
  321. (game-module (design-notes (
  322.   "Time scale is one month."
  323.   )))
  324.